#include <stdlib.h>
#include <string.h>
#include <stdarg.h>
#include <stdint.h>


////////////////////////
typedef struct 
{
    char * name;
    uint16_t data;
    uint8_t value;
}ugen_config;

////////////////////////////////////////////////////////////////////////////////////////
//上报的数据的类型
typedef enum 
{
    TYPE_BOOL = 1,

    TYPE_UINT8_T,
    TYPE_UINT16_T,
    TYPE_UINT32_T,

    TYPE_INT8_T = 5,
    TYPE_INT16_T,
    TYPE_INT32_T,

    TYPE_STRING,

    TYPE_EVENT
    //TYPE_INT64_T

    //TYPE_EVENT = NULL

}ugen_up_cmd_type;



typedef enum{
    NETWORK = 0x01,          //配网
    GET_STATE = 0x02,        //MCU查询模组状态
    REPLAY_STATE = 0x03,     //回复MCU查询模组状态
    RESET = 0x04,         //初始化
    HEARTBEAT = 0x05,       //心跳
    UPGRAND_TIME = 0x06,         //  时间校准
    FACTORY = 0x07,          //产测
    CHECK_OTA =0x08,         //模组ota
    UPGRAND_MCU_STATE =0x10,  //设备状态查询
    SETPROPRETY = 0x11,      //下发属性
    UPPROPRETY = 0x12,       //上报属性
    UPEVENT = 0x13          //上报事件  
}ugen_currency_cmd;

ugen_config * get_ugen_config(void);